package javaBase.nowcoder.HJ8_A_合并表记录;

import java.util.HashMap;
import java.util.Scanner;
import java.util.stream.Collectors;
/*
描述
数据表记录包含表索引index和数值value（int范围的正整数），请对表索引相同的记录进行合并，即将相同索引的数值进行求和运算，输出按照index值升序进行输出。

 */
public class Main {
    public static void main(String args[]) {
        Scanner sc = new Scanner(System.in);
        Integer times = Integer.parseInt(sc.nextLine());
        HashMap<Integer, Integer> map = new HashMap<>();
        for (int i = 0; i < times; i++) {
            String vk[] = sc.nextLine().split(" ");
            Integer temp = map.getOrDefault(Integer.parseInt(vk[0]), 0);
            temp += Integer.parseInt(vk[1]);
            map.put(Integer.parseInt(vk[0]), temp);
        }
        sc.close();
        map.entrySet().stream().sorted((o1, o2) -> {
            return o1.getKey() - o2.getKey();
        }).collect(Collectors.toList()).forEach(x -> {
            System.out.println(x.getKey() + " " + x.getValue());
        });
    }
}
